from PyQt5.QtWidgets import *       #部件，控件相关
from PyQt5.QtGui import *           #图片相关
from PyQt5.QtCore import *          #事件相关(鼠标等事件)

import sys                

#导入ui包体
from ui.Ui_father_widget import *          
#导入子窗口包体
from son_win import *


#自定义窗口，继承窗口
class father_Widget(QWidget):
    
    def __init__(self, parent=None):
        super().__init__(parent)
        
        #创建主窗口对象
        self.ui = Ui_father_widget()
        #调用对象函数
        self.ui.setupUi(self)
        
        
        self.init_ui()

    def init_ui(self):

        #创建子窗口对象
        self.son_widget = son_Widget()

        #绑定主窗口对象的按钮按下事件
        self.ui.open_btn.clicked.connect(self.son_widget.show)
        self.ui.close_btn.clicked.connect(self.son_widget.close)

        #接收自定义的信号
        self.son_widget.signal_1.connect(self.signal_Slot)
        self.son_widget.signal_2.connect(lambda: print("接收了自定义的信号的槽函数"))
        
    def signal_Slot(self, a, b):
        print(a,b)

        
# 作为主函数才会执行
if __name__ == '__main__':
    
    # 创建应用程序
    app = QApplication(sys.argv)

    # 创建窗口
    w = father_Widget()
    
    #显示窗口
    w.show()

    #等待窗口停止
    sys.exit(app.exec())